var gulp  = require("gulp")//引入安装的gulp模块
var browserSync=require('browser-sync').create();
var reload=function(){browserSync.reload()};//自动刷新
var concat=require('gulp-concat');
var jshint=require('gulp-jshint');
var uglify=require("gulp-uglify");
var sass = require('gulp-sass');//创建js混淆压缩 模块
//创建静态服务，然后浏览器同步
gulp.task("server",function(){
    browserSync.init({
        server: {
           //网站根目录
            baseDir: "./src/",
          //默认文件
            index: "index.html"
        },
        open: "external",//external 内网访问 local 本地访问（默认本地访问）
        port: 9080
    });
    //  **/*  包含目录下面文件夹下的文件   *不包含
    gulp.watch("./src/*.html").on('change', reload);
    gulp.watch("./src/css/*.css").on('change', reload);
})
 // 监听文件修改的任务
gulp.task("watchfile",function(){
    var watcher = gulp.watch('./src/css/*.css');
    watcher.on('change', function(event) {
      console.log('css ' + event.path + ' was ' + event.type + ', 执行任务...');
    });
})
 // 复制单个文件
gulp.task("copy",function(){
    gulp.src('./src/index.html').pipe(gulp.dest("./dist"));
})
//复制多个文件
gulp.task("copyfiles",function(){
    gulp.src('./src/*.html').pipe(gulp.dest("./dist"))
})
 // 压缩js文件
gulp.task("uglifyjs",function(){
    gulp.src(['./src/js/a.js','./src/js/b.js']).pipe(uglify()).pipe(gulp.dest('./dist/js'));
})
// //合并js文件
gulp.task("concatjs",function(){
    gulp.src(['./src/js/a.js','./src/js/b.js']).pipe(concat('index.min.js')).pipe(gulp.dest('./dist/js'));
})
// //合并，并压缩js文件
gulp.task("js",function(){
    gulp.src(['./src/js/a.js','./src/js/b.js'])
    .pipe(uglify()).pipe(concat('index.min.js'))
    .pipe(gulp.dest('./dist/js'));
})

//语法检测
gulp.task("jshint",function(){
    gulp.src('./src/js/*.js').pipe(jshint())
        .pipe(jshint.reporter('default'));
})
// sass
gulp.task('sass', function () {
 return gulp.src('./src/**/*.scss')
   .pipe(sass({outputStyle: 'compressed'}).on('error', sass.logError))
   .pipe(gulp.dest('./dist'));
})